package javao.cn.work.orc.utils;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
import java.util.Date;

public class TimeUtils {

    /**
     * yyyyMMdd 格式：20210803
     * @param Pattern yyyyMMdd
     * @return
     */
    public static String getDatsNow(String Pattern){
        // 获取当前日期
        LocalDate currentDate = LocalDate.now();
        // 定义日期格式器为 YYYYMMDD
        DateTimeFormatter formatter = DateTimeFormatter.ofPattern(Pattern);
        // 将当前日期格式化为字符串
        String formattedDate = currentDate.format(formatter);
        return formattedDate;
    }

    /**
     * 将日期字符串转换为 "yyyyMMdd" 格式的日期字符串。
     *
     * @param time 日期字符串，例如 "Thu Aug 07 00:00:00 CST 2014"。
     * @return 转换后的日期字符串，例如 "20140807"。
     */
    public static String toPattern_yyyyMMdd(String time) {
        try {
            // 定义输入日期字符串的格式
            SimpleDateFormat inputFormat = new SimpleDateFormat("EEE MMM dd HH:mm:ss zzz yyyy", java.util.Locale.ENGLISH);
            // 定义输出日期字符串的格式
            SimpleDateFormat outputFormat = new SimpleDateFormat("yyyyMMdd");
            // 将输入的日期字符串解析为 Date 对象
            Date date = inputFormat.parse(time);
            // 使用输出格式将 Date 对象转换为字符串
            return outputFormat.format(date);
        } catch (ParseException e) {
            // 处理日期解析失败的情况
            throw new IllegalArgumentException("时间字符串转换失败！" + time, e);
        }
    }


}
